atspi: Set placeholder-text attribute
authorMatthias Clasen <mclasen@redhat.com>
Tue, 13 Oct 2020 03:20:58 +0000 (23:20 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 13 Oct 2020 03:31:03 +0000 (23:31 -0400)
This is how GTK3 passes placeholder-text to orca,
and it works - orca reads it.

gtk/a11y/gtkatspicontext.c

index a8d3f16563a6307b9d025592b76d37b9b6f1fcf9..92562e4a04b8ff1eeef1835ce2b6a7112fa82d17 100644 (file)
@@ -401,6 +401,17 @@ handle_accessible_method (GDBusConnection       *connection,
 
       g_variant_builder_open (&builder, G_VARIANT_TYPE ("a{ss}"));
       g_variant_builder_add (&builder, "{ss}", "toolkit", "GTK");
+
+      if (gtk_at_context_has_accessible_property (GTK_AT_CONTEXT (self), GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER))
+        {
+          GtkAccessibleValue *value;
+
+          value = gtk_at_context_get_accessible_property (GTK_AT_CONTEXT (self), GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER);
+
+          g_variant_builder_add (&builder, "{ss}",
+                                 "placeholder-text", gtk_string_accessible_value_get (value));
+        }
+
       g_variant_builder_close (&builder);
 
       g_dbus_method_invocation_return_value (invocation, g_variant_builder_end (&builder));